// house_pkg/pages/locate/index.ts
import qqmapsdk from '../../../utils/qqMap'
Page({
  data: {
    address: '',
    NearbyPlace: []
  },
  onLoad() {
    this.getLocation()
  },
  async getLocation() {
    // 得到一些含有经纬度的返回值
    const {
      latitude,
      longitude
    } = await wx.getLocation()
    this.reverseGeocoder(latitude, longitude) //  经纬度转换为文字
    this.getNearbyPlace(latitude, longitude) //  附近的地点
  },
  async chooseLocation() {
    const res = await wx.chooseLocation()
    console.log(res)
    this.reverseGeocoder(latitude, longitude)
    this.getNearbyPlace(latitude, longitude)
  },
  // 经纬度转换为文字进行抽离封装一下 发送请求直接调用
  reverseGeocoder(latitude, longitude) {
    const that = this
    qqmapsdk.reverseGeocoder({
      location: {
        latitude,
        longitude
      },
      success: (res) => {
        console.log(res)
        this.setData({
          address: res.result.address
        })
      },
    })
  },
  // 把附近的地点也封装成一个函数
  getNearbyPlace(latitude, longitude) {
    qqmapsdk.search({
      keyword: '学校',
      location: {
        latitude,
        longitude
      },
      success: (res) => {
        console.log(res)
        // 对返回值重新加工一下 只返回我需要的数据
        const list = res.data.map(item => ({
          id: item.id,
          title: item.title
        }))
        console.log(list);
        this.setData({
          NearbyPlace: list
        })
      },
    })
  },
})